在实际使用中,使用SQLiteDatabase显得很繁琐,Android提供了另外一个方便的类:SQLiteOpenHelper,该类是一个帮助数据库创建、打开和进行版本管理的辅助类,提供了如下几个方法:
SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version):构造函数
SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version, DatabaseErrorHandler errorHandler):构造函数。
SQLiteDatabase getReadableDatabase():得到以读写方式打开的数据库对象。如果数据库不存在,则创建数据库,并调用onCreate()方法。如果数据库所在磁盘已满,则只允许读,不允许写。
SQLiteDatabase getWritableDatabase():得到以写方式打开的数据库对象。如果数据库不存在,则创建数据库,并调用onCreate()方法。如果数据库所在磁盘已满,则打开失败。
String getDatabaseName():得到数据库名字
voidonCreate(SQLiteDatabase db):当第一次创建数据库后回调此方法,可以在此方法中创建数据库表结构等。
voidonDowngrade(SQLiteDatabase db, int oldVersion, int newVersion):当数据库降级时被调用。
voidonOpen(SQLiteDatabase db):当数据库被打开后被调用。
voidonUpgrade(SQLiteDatabase db, int oldVersion, int newVersion):当数据库升级时回调此方法。
voidsetWriteAheadLoggingEnabled(boolean enabled)
voidclose():关闭数据库
使用SQLiteOpenHelper一般的方法是从该类派生一个类,并重写OnCreate()、onUpgrade()和OnOpen()等回调方法。